package com.tek.ding.faceding.bean;

import android.os.Parcel;
import android.os.Parcelable;

/**
 * 门店会员
 */
public class ShopMember implements Parcelable {

    private Long id;

    /**
     * 门店id
     */
    private Long shopId;

    /**
     * 门店名
     */
    private String shopName;

    /**
     * 家长id
     */
    private Long payUserId;

    /**
     * 家长手机
     */
    private String payUserPhone;

    /**
     * 家长姓名
     */
    private String parentName;

    /**
     * 会员姓名
     */
    private String memberName;

    /**
     * 性别
     * 1.男 2.女
     */
    private Integer sex;

    /**
     * 生日
     */
    private String birthday;

    /**
     * 住址
     */
    private String address;

    /**
     * 会员开始时间
     */
    private String memberStartTime;

    /**
     * 会员结束时间
     */
    private String memberEndTime;

    /**
     * 头像
     */
    private String avatarImg;

    /**
     * 读书本数
     */
    private Integer readBooks;

    /**
     * 周读书本数
     */
    private Integer readBooksWeek;

    /**
     * 月读书本数
     */
    private Integer readBooksMonth;

    /**
     * 读书天数
     */
    private Integer readDays;

    /**
     * 读书字数
     * 单位：万字
     */
    private Double readWords;

    /**
     * 读书等级(根据读书字数)
     */
    private String readGrade;

    /**
     * 在店状态
     * 1.在店 2.离店
     */
    private Integer shopStatus;

    /**
     * 在店状态时间
     */
    private String shopStatusTime;

    /**
     * 状态
     * 1.已激活 2.待激活 3.已过期 4.普通 5.体验次卡会员 6.体验月卡
     */
    private Integer status;

    /**
     * 体验次数
     */
    private Integer experienceNum;

    /**
     * 宠物积分
     */
    private Double petPoints;

    /**
     * 累计加分
     */
    private Double addPoint;

    /**
     * 累计减分
     */
    private Double subPoint;

    /**
     * 累计兑换
     */
    private Double exchangePoint;

    /**
     * 已交押金金额
     */
    private Double payDeposit;

    /**
     * 应缴押金金额
     */
    private Double deposit;

    /**
     * 可借时长（天）
     */
    private Integer canBorrowTime;

    /**
     * 可借数量（本）
     */
    private Integer canBorrowNum;

    /**
     * 逾期收费标准(元/天)
     */
    private Double chargingStandard;

    /**
     * 会员收费方式名
     */
    private String costName;

    /**
     * 新增时间
     */
    private String addTime;

    /**
     * 修改时间
     */
    private String editTime;

    /**
     * 跟进人id
     */
    private Long followId;

    /**
     * 跟进人
     */
    private String followName;

    /**
     * 跟进类型
     * 0.未分配 1.待跟进（一次未跟进） 2.跟进中 3.已成交
     */
    private Integer followType;

    /**
     * 跟进阶段
     * 1.建立联系 2.完成体验 3.确认意向
     */
    private Integer followStage;

    /**
     * 最后一次跟进时间
     */
    private String lastFollowTime;

    /**
     * 下次跟进时间
     */
    private String nextFollowTime;

    /**
     * 信息来源id
     */
    private Long infoSourceId;

    /**
     * 信息来源
     */
    private String infoSource;

    /**
     * 意向级别
     * 1.低 2.中 3.高
     */
    private Integer intentionLevel;

    /**
     * 年级
     */
    private String grade;

    /**
     * 学校
     */
    private String schoolName;

    /**
     * 是否上传人脸识别
     * -1或null:未上传 1：已上传
     */
    private Integer faceUpStatus;

    /**
     * 人脸数据id（备用）
     */
    private String faceId;

    /**
     * 人脸样本img
     */
    private String faceImg;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getShopId() {
        return shopId;
    }

    public void setShopId(Long shopId) {
        this.shopId = shopId;
    }

    public String getShopName() {
        return shopName;
    }

    public void setShopName(String shopName) {
        this.shopName = shopName;
    }

    public Long getPayUserId() {
        return payUserId;
    }

    public void setPayUserId(Long payUserId) {
        this.payUserId = payUserId;
    }

    public String getPayUserPhone() {
        return payUserPhone;
    }

    public void setPayUserPhone(String payUserPhone) {
        this.payUserPhone = payUserPhone;
    }

    public String getParentName() {
        return parentName;
    }

    public void setParentName(String parentName) {
        this.parentName = parentName;
    }

    public String getMemberName() {
        return memberName;
    }

    public void setMemberName(String memberName) {
        this.memberName = memberName;
    }

    public Integer getSex() {
        return sex;
    }

    public void setSex(Integer sex) {
        this.sex = sex;
    }

    public String getBirthday() {
        return birthday;
    }

    public void setBirthday(String birthday) {
        this.birthday = birthday;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getMemberStartTime() {
        return memberStartTime;
    }

    public void setMemberStartTime(String memberStartTime) {
        this.memberStartTime = memberStartTime;
    }

    public String getMemberEndTime() {
        return memberEndTime;
    }

    public void setMemberEndTime(String memberEndTime) {
        this.memberEndTime = memberEndTime;
    }

    public String getAvatarImg() {
        return avatarImg;
    }

    public void setAvatarImg(String avatarImg) {
        this.avatarImg = avatarImg;
    }

    public Integer getReadBooks() {
        return readBooks;
    }

    public void setReadBooks(Integer readBooks) {
        this.readBooks = readBooks;
    }

    public Integer getReadBooksWeek() {
        return readBooksWeek;
    }

    public void setReadBooksWeek(Integer readBooksWeek) {
        this.readBooksWeek = readBooksWeek;
    }

    public Integer getReadBooksMonth() {
        return readBooksMonth;
    }

    public void setReadBooksMonth(Integer readBooksMonth) {
        this.readBooksMonth = readBooksMonth;
    }

    public Integer getReadDays() {
        return readDays;
    }

    public void setReadDays(Integer readDays) {
        this.readDays = readDays;
    }

    public Double getReadWords() {
        return readWords;
    }

    public void setReadWords(Double readWords) {
        this.readWords = readWords;
    }

    public String getReadGrade() {
        return readGrade;
    }

    public void setReadGrade(String readGrade) {
        this.readGrade = readGrade;
    }

    public Integer getShopStatus() {
        return shopStatus;
    }

    public void setShopStatus(Integer shopStatus) {
        this.shopStatus = shopStatus;
    }

    public String getShopStatusTime() {
        return shopStatusTime;
    }

    public void setShopStatusTime(String shopStatusTime) {
        this.shopStatusTime = shopStatusTime;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public Integer getExperienceNum() {
        return experienceNum;
    }

    public void setExperienceNum(Integer experienceNum) {
        this.experienceNum = experienceNum;
    }

    public Double getPetPoints() {
        return petPoints;
    }

    public void setPetPoints(Double petPoints) {
        this.petPoints = petPoints;
    }

    public Double getAddPoint() {
        return addPoint;
    }

    public void setAddPoint(Double addPoint) {
        this.addPoint = addPoint;
    }

    public Double getSubPoint() {
        return subPoint;
    }

    public void setSubPoint(Double subPoint) {
        this.subPoint = subPoint;
    }

    public Double getExchangePoint() {
        return exchangePoint;
    }

    public void setExchangePoint(Double exchangePoint) {
        this.exchangePoint = exchangePoint;
    }

    public Double getPayDeposit() {
        return payDeposit;
    }

    public void setPayDeposit(Double payDeposit) {
        this.payDeposit = payDeposit;
    }

    public Double getDeposit() {
        return deposit;
    }

    public void setDeposit(Double deposit) {
        this.deposit = deposit;
    }

    public Integer getCanBorrowTime() {
        return canBorrowTime;
    }

    public void setCanBorrowTime(Integer canBorrowTime) {
        this.canBorrowTime = canBorrowTime;
    }

    public Integer getCanBorrowNum() {
        return canBorrowNum;
    }

    public void setCanBorrowNum(Integer canBorrowNum) {
        this.canBorrowNum = canBorrowNum;
    }

    public Double getChargingStandard() {
        return chargingStandard;
    }

    public void setChargingStandard(Double chargingStandard) {
        this.chargingStandard = chargingStandard;
    }

    public String getCostName() {
        return costName;
    }

    public void setCostName(String costName) {
        this.costName = costName;
    }

    public String getAddTime() {
        return addTime;
    }

    public void setAddTime(String addTime) {
        this.addTime = addTime;
    }

    public String getEditTime() {
        return editTime;
    }

    public void setEditTime(String editTime) {
        this.editTime = editTime;
    }

    public Long getFollowId() {
        return followId;
    }

    public void setFollowId(Long followId) {
        this.followId = followId;
    }

    public String getFollowName() {
        return followName;
    }

    public void setFollowName(String followName) {
        this.followName = followName;
    }

    public Integer getFollowType() {
        return followType;
    }

    public void setFollowType(Integer followType) {
        this.followType = followType;
    }

    public Integer getFollowStage() {
        return followStage;
    }

    public void setFollowStage(Integer followStage) {
        this.followStage = followStage;
    }

    public String getLastFollowTime() {
        return lastFollowTime;
    }

    public void setLastFollowTime(String lastFollowTime) {
        this.lastFollowTime = lastFollowTime;
    }

    public String getNextFollowTime() {
        return nextFollowTime;
    }

    public void setNextFollowTime(String nextFollowTime) {
        this.nextFollowTime = nextFollowTime;
    }

    public Long getInfoSourceId() {
        return infoSourceId;
    }

    public void setInfoSourceId(Long infoSourceId) {
        this.infoSourceId = infoSourceId;
    }

    public String getInfoSource() {
        return infoSource;
    }

    public void setInfoSource(String infoSource) {
        this.infoSource = infoSource;
    }

    public Integer getIntentionLevel() {
        return intentionLevel;
    }

    public void setIntentionLevel(Integer intentionLevel) {
        this.intentionLevel = intentionLevel;
    }

    public String getGrade() {
        return grade;
    }

    public void setGrade(String grade) {
        this.grade = grade;
    }

    public String getSchoolName() {
        return schoolName;
    }

    public void setSchoolName(String schoolName) {
        this.schoolName = schoolName;
    }

    public Integer getFaceUpStatus() {
        return faceUpStatus;
    }

    public void setFaceUpStatus(Integer faceUpStatus) {
        this.faceUpStatus = faceUpStatus;
    }

    public String getFaceId() {
        return faceId;
    }

    public void setFaceId(String faceId) {
        this.faceId = faceId;
    }

    public String getFaceImg() {
        return faceImg;
    }

    public void setFaceImg(String faceImg) {
        this.faceImg = faceImg;
    }

    @Override
    public int describeContents() {
        return 0;
    }

    @Override
    public void writeToParcel(Parcel dest, int flags) {
        dest.writeValue(this.id);
        dest.writeValue(this.shopId);
        dest.writeString(this.shopName);
        dest.writeValue(this.payUserId);
        dest.writeString(this.payUserPhone);
        dest.writeString(this.parentName);
        dest.writeString(this.memberName);
        dest.writeValue(this.sex);
        dest.writeString(this.birthday);
        dest.writeString(this.address);
        dest.writeString(this.memberStartTime);
        dest.writeString(this.memberEndTime);
        dest.writeString(this.avatarImg);
        dest.writeValue(this.readBooks);
        dest.writeValue(this.readBooksWeek);
        dest.writeValue(this.readBooksMonth);
        dest.writeValue(this.readDays);
        dest.writeValue(this.readWords);
        dest.writeString(this.readGrade);
        dest.writeValue(this.shopStatus);
        dest.writeString(this.shopStatusTime);
        dest.writeValue(this.status);
        dest.writeValue(this.experienceNum);
        dest.writeValue(this.petPoints);
        dest.writeValue(this.addPoint);
        dest.writeValue(this.subPoint);
        dest.writeValue(this.exchangePoint);
        dest.writeValue(this.payDeposit);
        dest.writeValue(this.deposit);
        dest.writeValue(this.canBorrowTime);
        dest.writeValue(this.canBorrowNum);
        dest.writeValue(this.chargingStandard);
        dest.writeString(this.costName);
        dest.writeString(this.addTime);
        dest.writeString(this.editTime);
        dest.writeValue(this.followId);
        dest.writeString(this.followName);
        dest.writeValue(this.followType);
        dest.writeValue(this.followStage);
        dest.writeString(this.lastFollowTime);
        dest.writeString(this.nextFollowTime);
        dest.writeValue(this.infoSourceId);
        dest.writeString(this.infoSource);
        dest.writeValue(this.intentionLevel);
        dest.writeString(this.grade);
        dest.writeString(this.schoolName);
        dest.writeValue(this.faceUpStatus);
        dest.writeString(this.faceId);
        dest.writeString(this.faceImg);
    }

    public ShopMember() {
    }

    protected ShopMember(Parcel in) {
        this.id = (Long) in.readValue(Long.class.getClassLoader());
        this.shopId = (Long) in.readValue(Long.class.getClassLoader());
        this.shopName = in.readString();
        this.payUserId = (Long) in.readValue(Long.class.getClassLoader());
        this.payUserPhone = in.readString();
        this.parentName = in.readString();
        this.memberName = in.readString();
        this.sex = (Integer) in.readValue(Integer.class.getClassLoader());
        this.birthday = in.readString();
        this.address = in.readString();
        this.memberStartTime = in.readString();
        this.memberEndTime = in.readString();
        this.avatarImg = in.readString();
        this.readBooks = (Integer) in.readValue(Integer.class.getClassLoader());
        this.readBooksWeek = (Integer) in.readValue(Integer.class.getClassLoader());
        this.readBooksMonth = (Integer) in.readValue(Integer.class.getClassLoader());
        this.readDays = (Integer) in.readValue(Integer.class.getClassLoader());
        this.readWords = (Double) in.readValue(Double.class.getClassLoader());
        this.readGrade = in.readString();
        this.shopStatus = (Integer) in.readValue(Integer.class.getClassLoader());
        this.shopStatusTime = in.readString();
        this.status = (Integer) in.readValue(Integer.class.getClassLoader());
        this.experienceNum = (Integer) in.readValue(Integer.class.getClassLoader());
        this.petPoints = (Double) in.readValue(Double.class.getClassLoader());
        this.addPoint = (Double) in.readValue(Double.class.getClassLoader());
        this.subPoint = (Double) in.readValue(Double.class.getClassLoader());
        this.exchangePoint = (Double) in.readValue(Double.class.getClassLoader());
        this.payDeposit = (Double) in.readValue(Double.class.getClassLoader());
        this.deposit = (Double) in.readValue(Double.class.getClassLoader());
        this.canBorrowTime = (Integer) in.readValue(Integer.class.getClassLoader());
        this.canBorrowNum = (Integer) in.readValue(Integer.class.getClassLoader());
        this.chargingStandard = (Double) in.readValue(Double.class.getClassLoader());
        this.costName = in.readString();
        this.addTime = in.readString();
        this.editTime = in.readString();
        this.followId = (Long) in.readValue(Long.class.getClassLoader());
        this.followName = in.readString();
        this.followType = (Integer) in.readValue(Integer.class.getClassLoader());
        this.followStage = (Integer) in.readValue(Integer.class.getClassLoader());
        this.lastFollowTime = in.readString();
        this.nextFollowTime = in.readString();
        this.infoSourceId = (Long) in.readValue(Long.class.getClassLoader());
        this.infoSource = in.readString();
        this.intentionLevel = (Integer) in.readValue(Integer.class.getClassLoader());
        this.grade = in.readString();
        this.schoolName = in.readString();
        this.faceUpStatus = (Integer) in.readValue(Integer.class.getClassLoader());
        this.faceId = in.readString();
        this.faceImg = in.readString();
    }

    public static final Creator<ShopMember> CREATOR = new Creator<ShopMember>() {
        @Override
        public ShopMember createFromParcel(Parcel source) {
            return new ShopMember(source);
        }

        @Override
        public ShopMember[] newArray(int size) {
            return new ShopMember[size];
        }
    };
}
